package com.schedule.dto;

import lombok.Data;
import jakarta.validation.constraints.NotNull;
import java.time.LocalDate;
import java.util.List;

/**
 * 自动排课请求DTO
 */
@Data
public class AutoScheduleDto {
    @NotNull(message = "班级ID不能为空")
    private Long classId;

    @NotNull(message = "根课程ID不能为空")
    private Long rootCourseId;

    @NotNull(message = "开始日期不能为空")
    private LocalDate startDate;

    @NotNull(message = "场地ID不能为空")
    private Long venueId;

    @NotNull(message = "授课教师列表不能为空")
    private List<Long> teacherIds;

    private Integer startTimeSlot = 1; // 开始时间段，默认第1节课

    private Boolean skipHolidays = true; // 是否跳过节假日，默认跳过

    private Integer maxDaysPerWeek = 6; // 每周最多上课天数，默认6天
}